---
title: Popover
description: Displays floating content in relation to a target element.
shadcnDocsLink: https://ui.shadcn.com/docs/components/popover
---

<ComponentPreview component="popover">
  ```tsx file=<rootDir>/src/examples/ui/popover.tsx
  ```
</ComponentPreview>

## Installation

<Installation component="popover">
  ```tsx file=<rootDir>/src/components/ui/popover.tsx
  ```
</Installation>

## Usage

```ts
import { Button } from '@/components/ui/button'
import { Input } from '@/components/ui/input'
import { Label } from '@/components/ui/label'
import {
  Popover,
  PopoverContent,
  PopoverTrigger,
} from '@/components/ui/popover'
```

```tsx
<Popover>
  <PopoverTrigger asChild>
    <Button example="noShadow">Open popover</Button>
  </PopoverTrigger>
  <PopoverContent className="w-80 text-main-foreground">
    <div className="grid gap-4">
      <div className="space-y-2">
        <h4 className="font-heading leading-none">Dimensions</h4>
        <p className="text-sm">Set the dimensions for the layer.</p>
      </div>
      <div className="grid gap-2">
        <div className="grid grid-cols-3 items-center gap-4">
          <Label htmlFor="width">Width</Label>
          <Input
            id="width"
            defaultValue="100%"
            className="col-span-2 h-8"
          />
        </div>
        <div className="grid grid-cols-3 items-center gap-4">
          <Label htmlFor="maxWidth">Max. width</Label>
          <Input
            id="maxWidth"
            defaultValue="300px"
            className="col-span-2 h-8"
          />
        </div>
        <div className="grid grid-cols-3 items-center gap-4">
          <Label htmlFor="height">Height</Label>
          <Input
            id="height"
            defaultValue="25px"
            className="col-span-2 h-8"
          />
        </div>
        <div className="grid grid-cols-3 items-center gap-4">
          <Label htmlFor="maxHeight">Max. height</Label>
          <Input
            id="maxHeight"
            defaultValue="none"
            className="col-span-2 h-8"
          />
        </div>
      </div>
    </div>
  </PopoverContent>
</Popover>
```